<template>
    <container type="top-header" class="g-width100 g-height100"
               inner-container-style="overflow:hidden;"
               header-style="padding:0"
               :force-render="{header:true}"
    >
        <Header  slot="header"></Header>
        <Aside slot="aside"></Aside>
        <div class="g-width100 g-height100"  v-if="portalOne" slot="main">
            <el-container class="g-width100 g-height100">
                <el-header style="height: auto;">
                    <Breadcrumb></Breadcrumb>
                </el-header>
                <el-main class="g-padding0">

                    <keep-alive>
                        <router-view v-if="$route.meta.keepAlive === true"></router-view>
                    </keep-alive>
                    <router-view v-if="!$route.meta.keepAlive"></router-view>
                </el-main>
            </el-container>

        </div>

        <!-- 渲染子项目到中央区域 -->
        <mfe-loader v-else
                slot="main"
                :app-list="appList"
                :auto-play="true"
        ></mfe-loader>
    </container>
</template>
<script>
    import Header from '../topheader/Header.vue'
    import Aside from '../leftaside/Aside.vue'
    import MfeLoader from '../../../../common-util/src/components/mfe/MfeLoader.vue'
    import Container from '../../../../common-util/src/components/page/Container.vue'
    import Breadcrumb from '../../../../common-util/src/components/common/Breadcrumb.vue'
    export default {
        name: 'Nav',
        components: {
            Container,
            Header,
            Aside,
            Breadcrumb,
            MfeLoader
        },
        computed: {
            portalOne(){
                return process.env.VUE_APP_PORTALONE == 'true'
            }
        },
        mounted (){
        },
        data () {
            return {
                appList:[
                    // 基础项目
                    {
                        name: 'base',// 应用的标识，自定义
                        appName:'基础应用',// 该自定义属性主要用来加载子应用loading展示
                        //entry: '//localhost:9002/base',// 子应用（导航项目）的首页地址，自动提取导致的子应用挂载函数，这个common-nav是随便写的好像不无关，暂时没弄明白
                        entry: '/app-base-public',// 子应用（导航项目）的首页地址，自动提取导致的子应用挂载函数，这个common-nav是随便写的好像不无关，暂时没弄明白
                        //activeRule: '/base'  // 导航项目必须一直渲染不能卸载，否则导致其它子项目挂载不上
                        // base  路径来自 base项目的路由配置
                        activeRule: ((window.mfe ? window.mfe_nav_router_base_path.commonNav: null) || '') + '/base'

                    },
                    // 认证项目
                    {
                        name: 'auth',// 应用的标识，自定义
                        appName:'认证应用',// 该自定义属性主要用来加载子应用loading展示
                        //entry: '//localhost:9002/base',// 子应用（导航项目）的首页地址，自动提取导致的子应用挂载函数，这个common-nav是随便写的好像不无关，暂时没弄明白
                        entry: '/app-auth-public',// 子应用（导航项目）的首页地址，自动提取导致的子应用挂载函数，这个common-nav是随便写的好像不无关，暂时没弄明白
                        //activeRule: '/base'  // 导航项目必须一直渲染不能卸载，否则导致其它子项目挂载不上
                        // base  路径来自 base项目的路由配置
                        activeRule: ((window.mfe ? window.mfe_nav_router_base_path.commonNav: null) || '') + '/auth'

                    },
                    // 考勤应用
                    {
                        name: 'attend',// 应用的标识，自定义
                        appName:'考勤应用',// 该自定义属性主要用来加载子应用loading展示
                        //entry: '//localhost:9002/base',// 子应用（导航项目）的首页地址，自动提取导致的子应用挂载函数，这个common-nav是随便写的好像不无关，暂时没弄明白
                        entry: '/app-attend-public',// 子应用（导航项目）的首页地址，自动提取导致的子应用挂载函数，这个common-nav是随便写的好像不无关，暂时没弄明白
                        //activeRule: '/base'  // 导航项目必须一直渲染不能卸载，否则导致其它子项目挂载不上
                        // base  路径来自 base项目的路由配置
                        activeRule: ((window.mfe ? window.mfe_nav_router_base_path.commonNav: null) || '') + '/attend'

                    },
                    // 流程引擎应用
                    {
                        name: 'workflow',// 应用的标识，自定义
                        appName:'流程引擎应用',// 该自定义属性主要用来加载子应用loading展示
                        //entry: '//localhost:9002/base',// 子应用（导航项目）的首页地址，自动提取导致的子应用挂载函数，这个common-nav是随便写的好像不无关，暂时没弄明白
                        entry: '/app-workflow-public',// 子应用（导航项目）的首页地址，自动提取导致的子应用挂载函数，这个common-nav是随便写的好像不无关，暂时没弄明白
                        //activeRule: '/base'  // 导航项目必须一直渲染不能卸载，否则导致其它子项目挂载不上
                        // base  路径来自 base项目的路由配置
                        activeRule: ((window.mfe ? window.mfe_nav_router_base_path.commonNav: null) || '') + '/workflow'
                    },
                    // 微信应用
                    {
                        name: 'wx',// 应用的标识，自定义
                        appName:'微信应用',// 该自定义属性主要用来加载子应用loading展示
                        //entry: '//localhost:9002/base',// 子应用（导航项目）的首页地址，自动提取导致的子应用挂载函数，这个common-nav是随便写的好像不无关，暂时没弄明白
                        entry: '/app-wx-public',// 子应用（导航项目）的首页地址，自动提取导致的子应用挂载函数，这个common-nav是随便写的好像不无关，暂时没弄明白
                        //activeRule: '/base'  // 导航项目必须一直渲染不能卸载，否则导致其它子项目挂载不上
                        // base  路径来自 base项目的路由配置
                        activeRule: ((window.mfe ? window.mfe_nav_router_base_path.commonNav: null) || '') + '/wx'
                    },
                    // 综合应用
                    {
                        name: 'composite',// 应用的标识，自定义
                        appName:'综合应用',// 该自定义属性主要用来加载子应用loading展示
                        //entry: '//localhost:9002/base',// 子应用（导航项目）的首页地址，自动提取导致的子应用挂载函数，这个common-nav是随便写的好像不无关，暂时没弄明白
                        entry: '/app-composite-public',// 子应用（导航项目）的首页地址，自动提取导致的子应用挂载函数，这个common-nav是随便写的好像不无关，暂时没弄明白
                        //activeRule: '/base'  // 导航项目必须一直渲染不能卸载，否则导致其它子项目挂载不上
                        // base  路径来自 base项目的路由配置
                        activeRule: ((window.mfe ? window.mfe_nav_router_base_path.commonNav: null) || '') + '/composite'
                    },
                    // crm应用
                    {
                        name: 'crm',// 应用的标识，自定义
                        appName:'crm应用',// 该自定义属性主要用来加载子应用loading展示
                        //entry: '//localhost:9002/base',// 子应用（导航项目）的首页地址，自动提取导致的子应用挂载函数，这个common-nav是随便写的好像不无关，暂时没弄明白
                        entry: '/app-crm-public',// 子应用（导航项目）的首页地址，自动提取导致的子应用挂载函数，这个common-nav是随便写的好像不无关，暂时没弄明白
                        //activeRule: '/base'  // 导航项目必须一直渲染不能卸载，否则导致其它子项目挂载不上
                        // base  路径来自 base项目的路由配置
                        activeRule: ((window.mfe ? window.mfe_nav_router_base_path.commonNav: null) || '') + '/crm'
                    }
                ]
            }
        },
        methods: {

        }
    }
</script>
<style scoped>
</style>
